﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using IAC_2013.com.iac.form;
using IAC_2013.com.iac.action;
using System.Data;

namespace IAC_2013.Forms
{
    public partial class frmProductCategory : Form
    {
        ProductCategoryForm frm;
        DataTable tb;

        public frmProductCategory()
        {
            InitializeComponent();
            load_data();
        }

        public void load_data()
        {
            frm = new ProductCategoryForm();
            tb = new System.Data.DataTable();
            tb = new ProductCategoryAction().searchCategory(frm);
            grvProductCategory.DataSource = tb;
        }

        private void btSearch_Click(object sender, EventArgs e)
        {
            frm = new ProductCategoryForm();
            frm.productCategoryName = txtProductCategoryName.Text;
            tb = new System.Data.DataTable();
            tb = new ProductCategoryAction().searchCategory(frm);
            grvProductCategory.DataSource = tb;
        }

        private void btSave_Click(object sender, EventArgs e)
        {
            frm = new ProductCategoryForm();
            frm.productCategoryName = txtProductCategoryName.Text;
            frm.description = txtDescription.Text;
            if (txtProductCategoryName.Text == null && txtProductCategoryName.Text.Trim().Equals(""))
            {
                MessageBox.Show("Tên loại sản phẩm chưa có.");
            }
            DialogResult resutl;
            resutl = MessageBox.Show("Bạn muốn ghi lại thông tin?", "Có/Không?", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
            if (resutl == DialogResult.OK)
            {
                Boolean checkAdd = new ProductCategoryAction().addCategory(frm);
                if (checkAdd == false)
                {
                    MessageBox.Show("Ghi lại dữ liệu không thành công.");
                }
            }
            load_data();
        }

        private void btEdit_Click(object sender, EventArgs e)
        {
            if (categoryId.Text == null && categoryId.Text.Trim().Equals(""))
            {
                MessageBox.Show("Bạn phải chọn loại sản phẩm để sửa.");
            }
            if (txtProductCategoryName.Text == null && txtProductCategoryName.Text.Trim().Equals(""))
            {
                MessageBox.Show("Tên loại sản phẩm chưa có.");
            }
            frm = new ProductCategoryForm();
            frm.productCategoryId = Int32.Parse(categoryId.Text);
            frm.productCategoryName = txtProductCategoryName.Text;
            DialogResult result;
            result = MessageBox.Show("Chắc chắn bạn muốn sửa thông tin trên?", "Sửa/Không", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
            if (result == DialogResult.OK)
            {
                Boolean checkEdit = new ProductCategoryAction().editCategory(frm);
                if (checkEdit == false)
                {
                    MessageBox.Show("Sửa thông tin không thành công.");
                }
            }
            load_data();
        }

        private void btDelete_Click(object sender, EventArgs e)
        {
            frm = new ProductCategoryForm();
            DialogResult result;
            result = MessageBox.Show("Chắc chắn bạn muốn xóa thông tin?", "Xóa/Không", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
            if (result == DialogResult.OK)
            {
                Boolean checkDelete = new ProductCategoryAction().deleteCategory(frm);
                if (checkDelete == false)
                {
                    MessageBox.Show("Xóa dữ liệu không thành công!");
                }
            }
            load_data();
            
        }

        private void grvProductCategory_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            int r = grvProductCategory.CurrentCell.RowIndex;
            categoryId.Text = grvProductCategory.Rows[r].Cells[0].Value.ToString();
            txtProductCategoryName.Text = grvProductCategory.Rows[r].Cells[1].Value.ToString();
            txtDescription.Text = grvProductCategory.Rows[r].Cells[2].Value.ToString();
        }
    }
}
